Data transmission refers to the concept of transferring a digital bit stream from one point to another through transmission channels. Data transmission can be classified into two categories, serial data transmission and parallel data transmission. Parallel data transmission transfers multiple bits via multiple data channels at a particular time. In contrast, serial data transmission transfers one bit via a single data channel at a particular time.
Communication between a memory device and a microprocessor in a Personal Computer (PC) can be done using data transmission. However, PCs are mostly restricted to a specific Input Output (IO) standard interface, e.g., the Universal Serial Bus (USB) standard interface, which is a serial interface. This presents a major issue when a common memory interface is implemented in a parallel fashion.
Therefore, circuitry to convert parallel data to serial data is typically utilized. A limitation with such a solution is the bottleneck created by the limits on the data transmission clock speed due to the serial data transmission. For example, data having 32 bits may be transmitted in a single clock cycle via a 32-bit parallel data channel, but require 32 clock cycles when transmitted in a serial manner.
It is within this context that the embodiments described herein arise.